In order to provide stability by resisting lateral loads we need to provide braces. Braces are used in wall, column, and slab forms. They are also needed in custom wooden scaffolding.
What types of loads do you expect bracing to be designed for?
If you design a brace in compression you will need to account for buckling; which means that you will have the reduction factor $C_P$ applied to the strength of the brace, i.e. a larger brace would be needed. For this reason we always design braces to be in tension, (we use $F_t$).
However, for argument's sake let's design a brace in compression. You also manage to get some 16 ft long rough sawn lumber for your bracing.
The wallform is 10' high and is expected to be exposed to a wind force of 20 psf (about a 110 mph wind gust event that would occur once every 25 years). We want the braces to be made from No.2 Douglas Fir-Larch (DFL) and placed at 4 feet on center.
from numpy import sqrt, ceil
P_tot = 20*10 #total wind load
w_hor = P_tot*5/10 #portion resisted by the brace
hor = sqrt(16**2-10**2) #horizontal distance to the bottom of the brace
T = w_hor *16/hor*4 #load on the brace
print("The load is %.2f lbs and hor = %.2f ft"%(T,hor))
The load is 512.41 lbs and hor = 12.49 ft
To convert $w_{hor}$ to $P_{brace}$ we need to to remember a little vector math and that boils down to...
$$w_{hor}\times W_{trib} = P_{brace} \times \frac{Hor}{L_{brace}}$$$$P_{brace}=w_{hor} \times \frac{L_{brace}}{Hor} \times W_{trib} $$$$Hor = \sqrt{L_{brace}^2 - h^2}$$$$Hor = \sqrt{(16 ft)^2 - (10 ft)^2}$$$$Hor = 12.5 ft$$$$P_{brace} = 100 plf \times \frac{16 ft}{12.5 ft} \times 4 ft$$$$P_{brace} = 512.4 lb$$%run Beams/Timber_beam_v_02.1.py
In order to display plots inline in the IPython notebook you must include the following magic command: %matplotlib inline If you need to display plot you will need to used the following commmand %matplotlib inline Note: The atribute 'pick_list' is now available_grades (added Jan, 6, 2014) Now using 2015 Timber code by default
brace = Timber_Beam()
loads -- a list of load dictionaries. For example: loads=[{'x0':5,'x1':10,'w':10}, #uniformly distributed load over a 5ft section (5ft - 10ft) {'x0':0,'x1':5,'w':20}, {'x0':10,'x1':15,'w':20}, {'x0':12.5,'p':20}, #point load {'x0':0,'x1':20,'arb':'1/10*x'}, #triangluar load function {'x0':10,'m':20}] # a concentrated moment
brace.list_wood()
'ALASKA CEDAR' 'ALASKA HEMLOCK' 'ALASKA SPRUCE' 'ALASKA YELLOW CEDAR' 'ASPEN' 'BALDCYPRESS' 'BEECH-BIRCH-HICKORY' 'COAST SITKA SPRUCE' 'COTTONWOOD' 'DOUGLAS FIR-LARCH' 'DOUGLAS FIR-LARCH (NORTH)' 'DOUGLAS FIR-SOUTH' 'EASTERN HEMLOCK-BALSAM FIR' 'EASTERN HEMLOCK-TAMARACK' 'EASTERN SOFTWOODS' 'EASTERN WHITE PINE' 'HEM-FIR' 'HEM-FIR (NORTH)' 'MIXED MAPLE' 'MIXED OAK' 'NORTHERN RED OAK' 'NORTHERN SPECIES' 'NORTHERN WHITE CEDAR' 'RED MAPLE' 'RED OAK' 'REDWOOD' 'SOUTHERN PINE' 'SPRUCE-PINE-FIR' 'SPRUCE-PINE-FIR (SOUTH)' 'WESTERN CEDARS' 'WESTERN WOODS' 'WHITE OAK' 'YELLOW CEDAR' 'YELLOW POPLAR'
brace.species = 'DOUGLAS FIR-LARCH'
Setting u_c_f to 12**3 based on length in ft and d in inches, i.e ((1 ft)/(1 in))^3.
brace.available_grades
For Douglas Fir-Larch: Select Structural, No.1 & Btr, No.1, No.2, No.3, Stud, Construction, Standard, Utility
brace.grade = 'No.2'
To get an estimate of the size of the brace we'll need, let's use the fact that the slenderness ratio of the brace needs to less than or equal to 50.
$$S.R. = \frac{L_e}{d_{min}}$$$$d_{min} = \frac{L_e}{S.R.}$$$$d_{min} = \frac{16 ft}{50} \times \frac{12 in}{1 ft}$$$$d_{min} = 3.84"$$So we'll try a rough sawn 4x4 which has the actual dimensions of $3.875" \times 3.875"$.
brace.L = 16 #ft
#Assuming SR = 50...
d_min = brace.L*12/50
print("The miniumum dimension of the brace is %g in."%d_min)
The miniumum dimension of the brace is 3.84 in.
#Use Table 4D and assume "Post and Timbers"
# brace.F_c = 700 #psi
# brace.E_min = 470000 #psi
# #(not needed from here down)
# brace.E = 1.3E6 #psi
# brace.F_b = 750 #psi
# brace.F_t = 475 #psi
# brace.F_v = 170 #psi
# brace.F_c_p = 625 #psi
# brace.C_F.F_c = 1 #from Tabel 4D
brace.b = 3.875 #in Rough sawn
brace.d = 3.875 #in Rough sawn
brace.C_D = 1.6
brace.P = T
Since we are using rough sawn lumber we will calculate the properties we would normally look up in Table 1B
$d = 3.875"$
$b = 3.875"$
$A = b \times d $
$A = 3.875" \times 3.875" = 15.02 in^2$
Since the this loading is due to wind pressure alone the load duration factor $C_D = 1.6$. This is one of those few occasions in this course where $C_D \ne 1.25$.
Using the stress values and adjustment factors found in Table 4A we can calculate $C_P$.
(You may have to scroll down to see the whole calculation.)
brace.C_P.work
Timber/ColumnBuckling.py:-1: UserWarning: Note: Using default value for 'C_P_l_e.c', (c = 0.8), for a sawn lumber column.
The capacity of the brace can now be found.
brace.column_capacity.work
The actual stress is,
brace.f_c_latex
and doing the comparison with the allowable stress we find,
brace.column_adequacy_check_latex
The next presentation will look at the same problem except we will assume the brace it only in tension.
Go ahead and start thinking about what that might mean for the design.
Class website (Use this link to if you are taking the course on e-learning.)
Github.io version of course website (Do not use this link if you are taking this course in Summer A or B.)
IPython.org (IPython is the opensource software used in the development of much of this course.)
# Mean wind reoccurance check
p = 20 #psf
K_z = 0.85 #10 ft
K_d = 0.85
C_f = 1.75 #free standing wall (Figure 29.4-1)
I = 1 # section 6.1 of ASCE 37-02
G = 0.85
#V = 100
# q_z = 0.00256 K_z K_zt K_d V**2 I
# F = q_z G C_f A_f
# p = q_h G C_f
V = (p / (G * C_f * 0.00256 * K_z * K_d * I))**(0.5)/0.75
print("%.2f mph"%V)
113.68 mph
CSS stylesheet
/* class = "max box" for img tags
<audio controls data-autoplay preload>
<source src="https://github.com/damontallen/Construction-Lectures-Fall-2014/raw/master/Intro/FILE%20NAME.mp3"
type='audio/mp3'>
<p><strong>Your user agent does not support the HTML5 Audio element or the files are missing.</strong></p>
</audio><a></a>
*/
class = "max box" == style="max-width:300px; max-height:300px; border:1px solid blue; float:left; margin-right:3px;"
important == <strong><font style="font:italic bold 16px arial;"> Text here </font></strong>